// {
//     "header": {
//         "avatar": {
//             "path": [
//                 ".fbxVZq"
//             ]
//         }
//     }
// }


import json from '@/content-scripts/paths.json'

export function getElement(str, doc = window.document) {
    // 参数验证
    if (!str || typeof str !== 'string') {
        console.error('getElement: 参数必须是有效的字符串')
        return null
    }
    
    let current = json
    const list = str.split('.')
    
    // 逐层遍历对象属性
    for (let i = 0; i < list.length; i++) {
        const key = list[i]
        
        // 检查当前层级是否存在
        if (!current || typeof current !== 'object' || !(key in current)) {
            console.error(`getElement: 路径 "${str}" 在 "${key}" 处无效`)
            return null
        }
        
        current = current[key]
    }
    
    let classList = current.path
    let elementList = []
    
    // 遍历所有路径，查询匹配的元素
    classList.forEach(item => {
        const elements = doc.querySelectorAll(item)
        elementList = [...elementList, ...elements]
    })
    
    return elementList
}
